package com.lyj.ai.tools;

import org.springframework.ai.tool.annotation.Tool;
import org.springframework.ai.tool.annotation.ToolParam;
import org.springframework.context.i18n.LocaleContextHolder;

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

/**
 * 获取当前时间函数
 */
public class DateTimeTools {


    /**
     * 搜索方法
     * @return
     */
    @Tool(description = "获取用户所在时区的当前日期和时间")
    String getCurrentDateTime() {
        return LocalDateTime.now().atZone(LocaleContextHolder.getTimeZone().toZoneId()).toString();
    }

    /**
     * 采取行动
     * @param time
     */
    @Tool(description = "为给定时间设置用户闹钟，以 ISO-8601 格式提供")
    void setAlarm(@ToolParam(description = "时间格式 ISO-8601 ") String time) {
        LocalDateTime alarmTime = LocalDateTime.parse(time, DateTimeFormatter.ISO_DATE_TIME);
        System.out.println("Alarm set for " + alarmTime);
    }

    public static void main(String[] args) {
        System.out.println(LocalDateTime.now().atZone(LocaleContextHolder.getTimeZone().toZoneId()).toString());
    }
}
